perm filename IARITH.MAC[UCI,SYS] blob sn#028391 filedate 1973-07-03 generic text, type T, neo UTF8
	TITLE ARITH - FORTRAN INTERFACE (ONE ARGUMENT FUNCTIONS)
	ENTRY LSQRT,LOG,LOG10,LSIN,LCOS,LACOS,LASIN,LATAN
	ENTRY LSINH,LCOSH,LTANH,LEXP,LFLOAT,RANDOM,LSIND,LCOSD
	OPDEF CALL[34B8]
	OPDEF JCALL[35B8]
	P=14
	A=1
	B=2
	EXTERN MAKNUM,NUMVAL,FLONUM,SQRT,SIN,COS,ATAN,ACOS,ASIN
	EXTERN ALOG,ALOG10,SINH,COSH,TANH,EXP,FLOAT,RAN,SIND,COSD
COMP:	HRRM B,JMP
	CALL 1,NUMVAL
	CAIE B,FLONUM
	JRST ,FLT
SFLTE:	MOVEM A,AR1
	MOVE A,[XWD 0,BLT1]
	BLT A,BLT1+17
JMP:	JSA 16,.-.
	JUMP 2,AR1
	MOVEM 0,AR1
	MOVE A,[XWD BLT1,0]
	BLT A,17
	MOVE A,AR1
	MOVEI B,FLONUM
	JCALL 2,MAKNUM
LSQRT:	MOVEI B,SQRT
	JRST ,COMP
LOG:	MOVEI B,ALOG
	JRST ,COMP
LOG10:	MOVEI B,ALOG10
	JRST ,COMP
LSIN:	MOVEI B,SIN
	JRST ,COMP
LCOS:	MOVEI B,COS
	JRST ,COMP
LSIND:	MOVEI B,SIND
	JRST ,COMP
LCOSD:	MOVEI B,COSD
	JRST ,COMP
LACOS:	MOVEI B,ACOS
	JRST B,COMP
LASIN:	MOVEI B,ASIN
	JRST ,COMP
LATAN:	MOVEI B,ATAN
	JRST ,COMP
LSINH:	MOVEI B,SINH
	JRST ,COMP
LCOSH:	MOVEI B,COSH
	JRST ,COMP
LTANH:	MOVEI B,TANH
	JRST ,COMP
LEXP:	MOVEI B,EXP
	JRST ,COMP
LFLOAT:	CALL 1,NUMVAL
	CAIN B,FLONUM
	JCALL 2,MAKNUM
FLT1:	MOVEI B,FLOAT
	HRRM B,JMP
	JRST ,SFLTE
FLT:	HRR B,JMP
	HRRM B,AR2
	PUSHJ P,FLT1
	HRR B,AR2
	JRST ,COMP
RANDOM:	MOVEI B,RAN
	JRST ,FLT1+1
AR2:	0
AR1:	0
BLT1:	BLOCK 20
	END